package org.dromara.vehicle.modules.vehicle.domain.vo;

import cn.hutool.core.date.DatePattern;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.vehicle.modules.vehicle.domain.VehicleAnnualInspectionRecord;

import java.io.Serial;
import java.io.Serializable;
import java.util.Date;



/**
 * 车辆年检记录视图对象 vehicle_annual_inspection_record
 *
 * @author ckk
 * @date 2025-06-24
 */
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = VehicleAnnualInspectionRecord.class)
public class VehicleAnnualInspectionRecordVo implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @ExcelProperty(value = "主键ID")
    private Long id;

    /**
     * 关联车辆基本信息表ID
     */
    @ExcelProperty(value = "关联车辆基本信息表ID")
    private Long vehicleId;

    /**
     * 年检日期
     */
    @ExcelProperty(value = "年检日期")
    @JsonFormat(pattern = DatePattern.NORM_DATE_PATTERN)
    private Date inspectionDate;

    /**
     * 年检结果
     */
    @ExcelProperty(value = "年检结果")
    private String inspectionResult;

    /**
     * 有效期开始日期
     */
    @ExcelProperty(value = "有效期开始日期")
    @JsonFormat(pattern = DatePattern.NORM_DATE_PATTERN)
    private Date validityBeginDate;

    /**
     * 有效期截止日期
     */
    @ExcelProperty(value = "有效期截止日期")
    @JsonFormat(pattern = DatePattern.NORM_DATE_PATTERN)
    private Date validityEndDate;


}
